"""
需求： 保存王者荣耀英雄头像与昵称
解决手动保存速度慢 容易出错

思路：需要找到数据来源
页面空白处  右键点击  检查  找到网络页签  点击清除日志  刷新页面
搜索 herolist.json  找到对应的请求
https://pvp.qq.com/web201605/js/herolist.json  对应的就是请求地址
"""

#  从urllib  导入request请求
from urllib import request
import json

# 发起请求 将返回数据赋予 res
res = request.urlopen("https://pvp.qq.com/web201605/js/herolist.json")
# 将字符串转换为python列表
hero_list = json.loads(res.read().decode())
# 遍历所有英雄
for data in hero_list:
    # 解析id 与 名字
    hero_id = data["ename"]
    hero_name = data["cname"]
    print(f"正在保存 {hero_name}")

    url = f"https://game.gtimg.cn/images/yxzj/img201606/heroimg/{hero_id}/{hero_id}.jpg"
    # 向头像地址发起请求 获取头像
    head_res = request.urlopen(url)
    # 保存头像
    with open(f"./heads/{hero_name}.jpg", "wb") as f:
        f.write(head_res.read())